#ifndef __PORT_H__
#define __PORT_H__

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

#include <stdint.h>
#include "config.h"
typedef void (*port_event_handle_t)(uint32_t btnID);
typedef void (*port_handle_t)(void);

#if SCREEN_BUFFER_COLOR_DEPTH == 1
extern uint8_t frame_buffer[SCREEN_BUFFER_HEIGHT / 8][SCREEN_BUFFER_WIDTH];
#elif SCREEN_BUFFER_COLOR_DEPTH == 8
#elif SCREEN_BUFFER_COLOR_DEPTH == 16
extern uint8_t frame_buffer[SCREEN_BUFFER_HEIGHT][SCREEN_BUFFER_WIDTH][2];
#elif SCREEN_BUFFER_COLOR_DEPTH == 24
extern uint8_t frame_buffer[SCREEN_BUFFER_HEIGHT][SCREEN_BUFFER_WIDTH][3];
#endif /* SCREEN_BUFFER_COLOR_DEPTH  */

extern void port_set_btn_handle(port_event_handle_t handle);
extern void port_set_init_handle(port_handle_t handle);

#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* __PORT_H__ */